﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TR.Domain.Entity.BsItemType;
using TR.Domain.Entity;
using TR.AppService.Dto;
using TR.Domain.Repository.sqlDto;

namespace TR.AppService.AppService.Bs_Item
{
    public interface IBs_ItemService
    {
        /// <summary>
        /// 查询
        /// </summary>
        /// <returns></returns>
        Task<List<bs_Item>> ItemSelete();
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="additemDto"></param>
        /// <returns></returns>
        Task<bool> ItemAdd(bs_Item bs_Ware);
        /// <summary>
        /// 分页
        /// </summary>
        /// <param name="pageSize"></param>
        /// <param name="currentPage"></param>
        /// <param name="str"></param>
        /// <returns></returns>
        Task<FenYe<bs_Item>> bs_Item_FenYe(int pageSize, int currentPage, string str);
        /// <summary>
        /// 新增查询
        /// </summary>
        /// <param name="pageSize"></param>
        /// <param name="currentPage"></param>
        /// <param name="str"></param>
        /// <returns></returns>
        Task<FenYe<bs_Item>> bs_Item_xz_FenYe(int pageSize, int currentPage, string str);
        /// <summary>
        /// wh_Orderbuy_d分页
        /// </summary>
        /// <param name="pageSize"></param>
        /// <param name="currentPage"></param>
        /// <param name="str"></param>
        /// <returns></returns>
        Task<FenYe<wh_orderbuy_d>> wh_Orderbuy_d_FenYe(int pageSize, int currentPage, string str);
        /// <summary>
        /// 逻辑删除
        /// </summary>
        /// <param name="item_code"></param>
        /// <returns></returns>
        Task<bool> ItemUDelect(string item_code);
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<bool> ItemDelect(int id);
        /// <summary>
        /// 查询id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<bs_Item> ItemSelectCode(string item_code);

        Task<bs_Item> ItemSelectid(int id);
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="usd"></param>
        /// <returns></returns>
        Task<bool> ItemUpdate(UpdateItemDto uid);
        //上传图片
        /*Task<ItemImage> UploadImageAsync(int parentId, string fileName, string imageUrl);*/
    }
}
